-- card: 9018 from stack: in.5 -- bmap block id: 9783 -- flags: 0000 -- background id: 6859 -- name: fx ----- HyperTalk script ----- on closeField set numberFormat to "0.#" put line 1 of card field 7 into c1 put line 2 of card field 7 into c2 put line 3 of card field 7 into c3 put line 5 of card field 7 into c5 put round(10*c1*c2/c3) into line 4 of card field 7 put c5/c3*c2 into line 6 of card field 7 put c5/c3 into line 7 of card field 7 put round(10*c5*c1*c2/c3) into line 8 of card field 7 end closeField on empty global emptyField put -1 into emptyField put false into var repeat with i=1 to 5 if line 1 of card field i is empty then if var then put 0 into emptyField exit empty end if put i into emptyField put true into var end if end repeat end empty on opencard hide cd fld about pass opencard end opencard on closecard hide cd fld about pass closecard end closecard -- part 12 (button) -- low flags: 00 -- high flags: C006 -- rect: left=206 top=104 right=124 bottom=258 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 1 -- font id: 0 -- text size: 12 -- style flags: 0 -- line height: 16 -- part name: sec. ----- HyperTalk script ----- on mouseUp set hilite of button "sec." to not hilite of button "sec." set hilite of button "min." to not hilite of button "sec." end mouseUp -- part 14 (button) -- low flags: 00 -- high flags: C006 -- rect: left=241 top=123 right=143 bottom=309 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 1 -- font id: 0 -- text size: 12 -- style flags: 0 -- line height: 16 -- part name: f/ratio ----- HyperTalk script ----- on mouseUp set hilite of button "f/ratio" to not hilite of button "f/ratio" set hilite of button "cm." to not hilite of button "f/ratio" end mouseUp -- part 15 (button) -- low flags: 00 -- high flags: 8006 -- rect: left=190 top=123 right=143 bottom=242 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 1 -- font id: 0 -- text size: 12 -- style flags: 0 -- line height: 16 -- part name: cm. ----- HyperTalk script ----- on mouseUp set hilite of button "cm." to not hilite of button "cm." set hilite of button "f/ratio" to not hilite of button "cm." end mouseUp -- part 18 (button) -- low flags: 00 -- high flags: 8006 -- rect: left=257 top=104 right=124 bottom=309 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 1 -- font id: 0 -- text size: 12 -- style flags: 0 -- line height: 16 -- part name: min. ----- HyperTalk script ----- on mouseUp set hilite of button "min." to not hilite of button "min." set hilite of button "sec." to not hilite of button "min." end mouseUp -- part 22 (button) -- low flags: 00 -- high flags: 8000 -- rect: left=50 top=197 right=219 bottom=75 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 1 -- font id: 0 -- text size: 12 -- style flags: 0 -- line height: 16 -- part name: Sun ----- HyperTalk script ----- on mouseUp put -8 into card field 1 put "Sun" into card field "Object" end mouseUp -- part 24 (button) -- low flags: 00 -- high flags: 8000 -- rect: left=50 top=218 right=239 bottom=114 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 1 -- font id: 0 -- text size: 12 -- style flags: 0 -- line height: 16 -- part name: Full Moon ----- HyperTalk script ----- on mouseUp put 11 into card field 1 put "Full Moon" into card field "Object" end mouseUp -- part 25 (button) -- low flags: 00 -- high flags: 8000 -- rect: left=50 top=238 right=259 bottom=143 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 1 -- font id: 0 -- text size: 12 -- style flags: 0 -- line height: 16 -- part name: Gibbous Moon ----- HyperTalk script ----- on mouseUp put 12 into card field 1 put "Gibbous Moon" into card field "Object" end mouseUp -- part 26 (button) -- low flags: 00 -- high flags: 8000 -- rect: left=50 top=258 right=279 bottom=142 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 1 -- font id: 0 -- text size: 12 -- style flags: 0 -- line height: 16 -- part name: Quarter Moon ----- HyperTalk script ----- on mouseUp put 13.5 into card field 1 put "Quarter Moon" into card field "Object" end mouseUp -- part 27 (button) -- low flags: 00 -- high flags: 8000 -- rect: left=50 top=278 right=299 bottom=151 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 1 -- font id: 0 -- text size: 12 -- style flags: 0 -- line height: 16 -- part name: Crescent Moon ----- HyperTalk script ----- on mouseUp put 14.5 into card field 1 put "Crescent Moon" into card field "Object" end mouseUp -- part 28 (button) -- low flags: 00 -- high flags: 8000 -- rect: left=50 top=298 right=319 bottom=162 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 1 -- font id: 0 -- text size: 12 -- style flags: 0 -- line height: 16 -- part name: Earthshine Moon ----- HyperTalk script ----- on mouseUp put 24.5 into card field 1 put "Earthshine Moon" into card field "Object" end mouseUp -- part 30 (button) -- low flags: 80 -- high flags: 8000 -- rect: left=50 top=218 right=239 bottom=147 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 1 -- font id: 0 -- text size: 12 -- style flags: 0 -- line height: 16 -- part name: Central Umbra ----- HyperTalk script ----- on mouseUp put 23.5 into card field 1 put "Moon - Central Umbra" into card field "Object" end mouseUp -- part 45 (field) -- low flags: 00 -- high flags: 4000 -- rect: left=145 top=87 right=106 bottom=189 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 0 -- font id: 3 -- text size: 12 -- style flags: 0 -- line height: 16 -- part name: -- part 31 (button) -- low flags: 80 -- high flags: 8000 -- rect: left=50 top=238 right=259 bottom=128 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 1 -- font id: 0 -- text size: 12 -- style flags: 0 -- line height: 16 -- part name: Edge Umbra ----- HyperTalk script ----- on mouseUp put 22 into card field 1 put "Moon - Just within Umbra" into card field "Object" end mouseUp -- part 32 (button) -- low flags: 80 -- high flags: 8000 -- rect: left=50 top=258 right=279 bottom=143 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 1 -- font id: 0 -- text size: 12 -- style flags: 0 -- line height: 16 -- part name: Partial Umbra ----- HyperTalk script ----- on mouseUp put 20 into card field 1 put "Moon - Partially within Umbra" into card field "Object" end mouseUp -- part 33 (button) -- low flags: 80 -- high flags: 8000 -- rect: left=50 top=278 right=299 bottom=118 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 1 -- font id: 0 -- text size: 12 -- style flags: 0 -- line height: 16 -- part name: Penumbra ----- HyperTalk script ----- on mouseUp put 15 into card field 1 put "Moon - Penumbra" into card field "Object" end mouseUp -- part 34 (button) -- low flags: 00 -- high flags: 8000 -- rect: left=144 top=197 right=219 bottom=240 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 1 -- font id: 0 -- text size: 12 -- style flags: 0 -- line height: 16 -- part name: Lunar Eclipse ----- HyperTalk script ----- on mouseUp if visible of button 11 then repeat with i= 6 to 10 set visible of button i to true end repeat repeat with i= 11 to 14 set visible of button i to false end repeat else repeat with i= 11 to 14 set visible of button i to true end repeat repeat with i= 6 to 10 set visible of button i to false end repeat end if end mouseUp -- part 35 (button) -- low flags: 00 -- high flags: 8000 -- rect: left=146 top=218 right=239 bottom=240 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 1 -- font id: 0 -- text size: 12 -- style flags: 0 -- line height: 16 -- part name: Stars ----- HyperTalk script ----- on mouseUp Ask "Faintest Magnitude?" put rnd10(4*(it-4.5)/3+9) into card field 1 put "Stars: Mag. Limit =" && it into card field "Object" end mouseUp -- part 36 (button) -- low flags: 00 -- high flags: 8000 -- rect: left=157 top=238 right=258 bottom=240 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 1 -- font id: 0 -- text size: 12 -- style flags: 0 -- line height: 16 -- part name: Venus ----- HyperTalk script ----- on mouseUp put 8 into card field 1 put "Venus" into card field "Object" end mouseUp -- part 37 (button) -- low flags: 00 -- high flags: 8000 -- rect: left=158 top=257 right=278 bottom=240 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 1 -- font id: 0 -- text size: 12 -- style flags: 0 -- line height: 16 -- part name: Mars @ opp. ----- HyperTalk script ----- on mouseUp put 13 into card field 1 put "Mars @ opp." into card field "Object" end mouseUp -- part 47 (field) -- low flags: 00 -- high flags: 4000 -- rect: left=145 top=105 right=124 bottom=200 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 0 -- font id: 3 -- text size: 12 -- style flags: 0 -- line height: 16 -- part name: 2 -- part 38 (button) -- low flags: 00 -- high flags: 8000 -- rect: left=158 top=277 right=298 bottom=240 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 1 -- font id: 0 -- text size: 12 -- style flags: 0 -- line height: 16 -- part name: Jupiter ----- HyperTalk script ----- on mouseUp put 13 into card field 1 put "Jupiter" into card field "Object" end mouseUp -- part 39 (button) -- low flags: 00 -- high flags: 8000 -- rect: left=161 top=298 right=319 bottom=240 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 1 -- font id: 0 -- text size: 12 -- style flags: 0 -- line height: 16 -- part name: Saturn ----- HyperTalk script ----- on mouseUp put 15.5 into card field 1 put "Saturn" into card field "Object" end mouseUp -- part 44 (button) -- low flags: 00 -- high flags: 2000 -- rect: left=473 top=56 right=88 bottom=509 -- title width / last selected line: 0 -- icon id / first selected line: 2162 / 2162 -- text alignment: 1 -- font id: 0 -- text size: 12 -- style flags: 0 -- line height: 16 -- part name: ----- HyperTalk script ----- on mouseUp if visible of cd fld about then hide cd fld about else pop card end if end mouseUp -- part 48 (field) -- low flags: 00 -- high flags: 4000 -- rect: left=145 top=123 right=142 bottom=189 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 0 -- font id: 3 -- text size: 12 -- style flags: 0 -- line height: 16 -- part name: 3 -- part 49 (field) -- low flags: 00 -- high flags: 4000 -- rect: left=145 top=141 right=160 bottom=189 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 0 -- font id: 3 -- text size: 12 -- style flags: 0 -- line height: 16 -- part name: 4 -- part 50 (field) -- low flags: 00 -- high flags: 4000 -- rect: left=145 top=159 right=178 bottom=189 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 0 -- font id: 3 -- text size: 12 -- style flags: 0 -- line height: 16 -- part name: 5 -- part 51 (field) -- low flags: 00 -- high flags: 4000 -- rect: left=188 top=87 right=106 bottom=410 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 0 -- font id: 3 -- text size: 12 -- style flags: 0 -- line height: 16 -- part name: Object -- part 42 (field) -- low flags: 00 -- high flags: 4000 -- rect: left=375 top=173 right=320 bottom=452 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 0 -- font id: 16 -- text size: 12 -- style flags: 0 -- line height: 16 -- part name: -- part 40 (field) -- low flags: 00 -- high flags: 4000 -- rect: left=255 top=173 right=320 bottom=372 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 0 -- font id: 16 -- text size: 12 -- style flags: 0 -- line height: 16 -- part name: -- part 53 (field) -- low flags: 80 -- high flags: 0004 -- rect: left=81 top=40 right=145 bottom=430 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 1 -- font id: 20 -- text size: 24 -- style flags: 0 -- line height: 32 -- part name: Output -- part 54 (button) -- low flags: 00 -- high flags: 8003 -- rect: left=359 top=124 right=146 bottom=459 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 1 -- font id: 0 -- text size: 12 -- style flags: 0 -- line height: 16 -- part name: Calculate ----- HyperTalk script ----- on mouseUp global emptyField if the selection is not empty then put empty into selection empty put "1,2,4,8,15,30,60,125,250,500,1000" into dur if emptyField is -1 then put empty into card field 2 put 2 into emptyField end if if emptyField is 0 then put return & "Not enough items specified..." into card field "Output" flashField 2 exit mouseUp end if put line 1 of card field 1 into fx1 put line 1 of card field 2 into it if hilite of button "min." then multiply it by 60 if char 2 of it is "/" then get value of it put 12+log2(it) into fx2 put 10-2*log2(line 1 of card field 3) into fx3 if hilite of button "cm." then multiply fx3 by -1 put log2(line 1 of card field 4)-4 into fx4 put -10/3*line 1 of card field 5 into fx5 set numberFormat to "0.#" if emptyField is 1 then put fx2+fx3+fx4+fx5 into card field 1 if emptyField is 2 then put exp2(fx1-fx3-fx4-fx5-12) into it if it<60 then if it<1 then get round(1/it) repeat with i=1 to 11 if it<=item i of dur then get item i of dur exit repeat end if end repeat put "1/" & it into card field 2 else put it into card field 2 end if set hilite of button "min." to false set hilite of button "sec." to true end if else divide it by 60 set hilite of button "min." to true set hilite of button "sec." to false put it into card field 2 end if if emptyField is 3 then put fx1-fx2-fx4-fx5 into it if hilite of button "f/ratio" then put exp2((10-it)/2) into it else put exp2((10+it)/2) into it put it into card field 3 end if if emptyField is 4 then put exp2(fx1-fx2-fx3-fx5+4) into card field 4 end if if emptyField is 5 then put 0.3*(fx1-fx2-fx3-fx4) into card field 5 end if end mouseUp -- part 55 (button) -- low flags: 00 -- high flags: 2002 -- rect: left=472 top=22 right=54 bottom=510 -- title width / last selected line: 0 -- icon id / first selected line: 14767 / 14767 -- text alignment: 1 -- font id: 0 -- text size: 12 -- style flags: 0 -- line height: 16 -- part name: New Button ----- HyperTalk script ----- on mouseUp set scroll of cd fld about to 0 show cd fld about end mouseUp -- part 56 (field) -- low flags: 80 -- high flags: 0007 -- rect: left=41 top=77 right=323 bottom=469 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 0 -- font id: 20 -- text size: 12 -- style flags: 0 -- line height: 16 -- part name: about -- part contents for card part 40 ----- text ----- *Aperture (cm) *f/ratio eyepiece fl. (mm) magnification camera fl. (mm) effective f/ratio big M effective fl. -- part contents for card part 42 ----- text ----- 25.4 10 15 169 50 33.3 3.3 8467 -- part contents for card part 50 ----- text ----- 0 -- part contents for card part 49 ----- text ----- 400 -- part contents for card part 45 ----- text ----- 13 -- part contents for card part 48 ----- text ----- 33 -- part contents for card part 51 ----- text ----- Mars @ opp. -- part contents for card part 53 ----- text ----- All items specified... -- part contents for card part 47 ----- text ----- 1/60 -- part contents for card part 56 ----- text ----- This card allows one to calculate exposure times for astronomical photographs. One may supply four of the five exposure criteria and the missing one will be calculated. Since exposure time is the most common calculation, it is calculated if all five parameters are present. Click on Calculate button to calculate. A filter of 0 corresponds to no filter. Clicking on the object gives the correct average fx value for that object (except Mars, which is at opposition). Asking for star exposure times, a limiting magnitude is requested. Clicking on the Lunar Eclipse button gives fx values for the eclipsed moon rather than the uneclipsed moon. For the aperture button, one must use f/ratio when photographing extended objects (objects which show a disk, such as planets) and cm. aperture when photographing other objects (stars). One can enter telescope data for calculation of magnification and effective ratio by entering the proper telescope values. The starred values will remain given for one telescope. Press the Enter key to calculate. These equations and the fx idea appeared first in Barry Gordon's book, The fx System of Astrophotograpy.